package com.caocaog.market.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.caocaog.market.modules.BaseEntity;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 商品订单历史表
 *
 * @author jeecg-boot
 * @date 2021-11-29
 */
@Data
@TableName("mk_order_his")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="mk_order_his对象", description="商品订单历史表")
public class OrderHis extends BaseEntity implements Serializable {
    private static final long serialVersionUID = 1L;


	/**订单主键*/
	@Excel(name = "订单主键", width = 15)
    @ApiModelProperty(value = "订单主键")
    private String orderId;
	/**分站ID*/
	@Excel(name = "分站ID", width = 15)
    @ApiModelProperty(value = "分站ID")
    private String siteId;
	/**商家ID*/
	@Excel(name = "商家ID", width = 15)
    @ApiModelProperty(value = "商家ID")
    private String merchantId;
	/**店铺ID*/
	@Excel(name = "店铺ID", width = 15)
    @ApiModelProperty(value = "店铺ID")
    private String shopId;
	/**会员ID*/
	@Excel(name = "会员ID", width = 15)
    @ApiModelProperty(value = "会员ID")
    private String memberId;
	/**订单号*/
	@Excel(name = "订单号", width = 15)
    @ApiModelProperty(value = "订单号")
    private String orderNo;
	/**类型1：外卖 2：自提 3：店内*/
	@Excel(name = "类型1：外卖 2：自提 3：店内", width = 15, dicCode = "order_type")
	@Dict(dicCode = "order_type")
    @ApiModelProperty(value = "类型1：外卖 2：自提 3：店内")
    private Integer type;
	/**状态*/
	@Excel(name = "状态", width = 15, dicCode = "order_status")
	@Dict(dicCode = "order_status")
    @ApiModelProperty(value = "状态")
    private String status;
	/**来源1:微信小程序 2：支付宝小程序 3：安卓APP 4:IOSAPP*/
	@Excel(name = "来源1:微信小程序 2：支付宝小程序 3：安卓APP 4:IOSAPP", width = 15, dicCode = "order_source")
	@Dict(dicCode = "order_source")
    @ApiModelProperty(value = "来源1:微信小程序 2：支付宝小程序 3：安卓APP 4:IOSAPP")
    private Integer source;
	/**支付状态*/
	@Excel(name = "支付状态", width = 15, dicCode = "order_pay_status")
	@Dict(dicCode = "order_pay_status")
    @ApiModelProperty(value = "支付状态")
    private Integer payStatus;
	/**支付方式*/
	@Excel(name = "支付方式", width = 15, dicCode = "order_pay_way")
	@Dict(dicCode = "order_pay_way")
    @ApiModelProperty(value = "支付方式")
    private Integer payWay;
	/**支付流水号*/
	@Excel(name = "支付流水号", width = 15)
    @ApiModelProperty(value = "支付流水号")
    private String paySerno;
	/**支付时间*/
	@Excel(name = "支付时间", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "支付时间")
    private Date payTime;
	/**订单金额*/
	@Excel(name = "订单金额", width = 15)
    @ApiModelProperty(value = "订单金额")
    private String amount;
	/**优惠金额*/
	@Excel(name = "优惠金额", width = 15)
    @ApiModelProperty(value = "优惠金额")
    private String discountAmount;
	/**配送费*/
	@Excel(name = "配送费", width = 15)
    @ApiModelProperty(value = "配送费")
    private String deliveryAmount;
	/**打包费*/
	@Excel(name = "打包费", width = 15)
    @ApiModelProperty(value = "打包费")
    private String packAmount;
	/**支付金额*/
	@Excel(name = "支付金额", width = 15)
    @ApiModelProperty(value = "支付金额")
    private String payAmount;
	/**姓名*/
	@Excel(name = "姓名", width = 15)
    @ApiModelProperty(value = "姓名")
    private String name;
	/**性别*/
	@Excel(name = "性别", width = 15)
    @ApiModelProperty(value = "性别")
    private Integer sex;
	/**联系方式*/
	@Excel(name = "联系方式", width = 15)
    @ApiModelProperty(value = "联系方式")
    private String mobile;
	/**位置*/
	@Excel(name = "位置", width = 15)
    @ApiModelProperty(value = "位置")
    private String location;
	/**地址*/
	@Excel(name = "地址", width = 15)
    @ApiModelProperty(value = "地址")
    private String address;
	/**经度*/
	@Excel(name = "经度", width = 15)
    @ApiModelProperty(value = "经度")
    private String lng;
	/**纬度*/
	@Excel(name = "纬度", width = 15)
    @ApiModelProperty(value = "纬度")
    private String lat;
	/**订单距离*/
	@Excel(name = "订单距离", width = 15)
    @ApiModelProperty(value = "订单距离")
    private String distance;
	/**配送方式*/
	@Excel(name = "配送方式", width = 15, dicCode = "order_delivery_type")
	@Dict(dicCode = "order_delivery_type")
    @ApiModelProperty(value = "配送方式")
    private String deliveryType;
}
